using Fuse8.DomainFramework.Domain;

namespace Fuse8.GlobalizationFramework.Domain.Commands
{
    /// <summary>
    /// Contract Resource command factory
    /// </summary>
    public interface IResourceCommandFactory
    {
        /// <summary>
        /// Creats concrete command by abstarct type
        /// </summary>
        /// <typeparam name="T">Abstract type of command</typeparam>
        /// <returns></returns>
        T GetCommand<T>() where T : class, IEntityCommand<Resource>;
    }
}